Les méthodes de calcul modernes se basent sur une autre somme dont la convergence est plus rapide. Cette formule a notamment permis d'établir un nouveau record de calcul des décimales de
\(\pi\)
le 14 mars 2024, puisque ce ne sont pas moins de 105 000 milliards de chiffres du développement décimal qui ont été calculés à l'aide de la formule suivante :
\(\dfrac{1}{\pi}=12\displaystyle\sum_{k=0}^{+\infty} \dfrac{(-1)^k(6k)!(545140134k+13591409)}{(3k)!(k!)^3(640320)^{3k+3/2}}\)
Ce calcul a tout de même duré 75 jours, du 14 décembre 2023 au 27 février 2024 !
Le programme ci-dessous permet de calculer les 10 premiers termes de l'inverse de cette somme.
import decimal
def binary_split(a, b):
if b == a + 1:
Pab = -(6*a - 5)*(2*a - 1)*(6*a - 1)
Qab = 10939058860032000 * a**3
Rab = Pab * (545140134*a + 13591409)
else:
m = (a + b) // 2
Pam, Qam, Ram = binary_split(a, m)
Pmb, Qmb, Rmb = binary_split(m, b)
Pab = Pam * Pmb
Qab = Qam * Qmb
Rab = Qmb * Ram + Pam * Rmb
return Pab, Qab, Rab
def chudnovsky(n):
"""Chudnovsky algorithm."""
P1n, Q1n, R1n = binary_split(1, n)
return (426880 * decimal.Decimal(10005).sqrt() * Q1n) / (13591409*Q1n + R1n)
print(chudnovsky(2)) # 3.141592653589793238462643384
decimal.getcontext().prec = 100
for n in range(2,10):
print(f"{n=} {chudnovsky(n)}") # 3.14159265358979323846264338...
Source : https://lesmanuelslibres.region-academique-idf.frTélécharger le manuel : https://forge.apps.education.fr/drane-ile-de-france/les-manuels-libres/mathematiques-terminale-specialite ou directement le fichier ZIPSous réserve des droits de propriété intellectuelle de tiers, les contenus de ce site sont proposés dans le cadre du droit Français sous licence CC BY-NC-SA 4.0